A conventional heat engine, such as a Stirling engine, is able to produce power from an external heat source. The heat source may be low cost or free, such as waste heat from a manufacturing process, but the Stirling cycle itself requires a heavy and expensive engine resulting in prohibitive cost and weight for many applications. Another limitation of the Stirling engine is that working fluid must be heated and cooled with every cycle of the engine. This limits the speed at which the engine can operate and requires sophisticated heat exchangers.
Other conventional heat engines, such as steam engines that use the Rankine cycle, require the working fluid in the engine to change phases during operation of the engine. For a particular operating fluid, such as water, the engine requires a heat source at a temperature at over the boiling point of the operating fluid, 100 degrees Celsius for water, in order for the fluid to change to steam during the Rankine cycle. The Rankine cycle is not easily implemented in applications where the temperature at the heat source changes over time or where only small variations in temperature are available to operate the engine.